package com.zhenhao.xsq.ui.activity.login.contract;

import com.zhenhao.xsq.entity.BaseDataEntity;
import com.zhenhao.xsq.entity.BaseEntity;
import com.zhenhao.xsq.entity.LoginEntity;
import com.zhenhao.xsq.entity.UserInfoEntity;
import com.zhenhao.xsq.entity.login.UserEntity;
import com.zhenhao.xsq.ui.activity.base.BasePresenter;
import com.zhenhao.xsq.ui.activity.base.BaseView;

import java.util.Map;

/**
 * @author xlei
 * @Package The contract for LoginActivity
 * @Description: $description
 * @date 2019/01/03 14:52:55
 */
public interface LoginContract {
    interface View extends BaseView<LoginContractPresenter> {
        /**
         *
         */
        void showProgressDialog();

        /**
         *
         */
        void closeProgressDialog();

        void loginSuccess(BaseDataEntity loginEntity);

        void loginFail();

        void getUserInfoSuccess(UserEntity userEntity);

        void getCodeSuccess(BaseEntity baseEntity);

    }

    interface LoginContractPresenter extends BasePresenter {

        void login(Map map);

        void getUserInfo();

        void getCode(String tel, String xmbh);
    }
}